package com.light.gulimall.auth.service;

import com.light.common.utils.R;
import com.light.gulimall.auth.dto.LoginDTO;
import com.light.gulimall.auth.vo.UserRegisterVo;

public interface LoginService {

    /**
     * 发送验证码
     * @param phone 手机号
     * @param code  验证码
     * @return 发送结果
     */
    R sendMessageCode(String phone, String code);

    /**
     * 校验验证码信息
     * @param vo  前端传递
     * @return 校验结果
     */
    R checkCode(UserRegisterVo vo);

    /**
     * 用户注册,远程调用gulimall-member服务
     * @param vo    注册信息
     */
    R register(UserRegisterVo vo);

    /**
     * 用户登录,远程调用gulimall-member服务
     * @param dto 登录信息
     * @return  返回结果
     */
    R login(LoginDTO dto);
}
